package pl.edu.agh.agents.planner;

import java.util.List;
import java.util.Map;

import pl.edu.agh.agents.agent.Agent;
import pl.edu.agh.agents.path.Path;
import pl.edu.agh.agents.state.State;

public interface Algorithm {
	public Path randomPath(Agent agent);
	public Path calculatePath(State a, State b);
	public Path calculatePath(Agent agent);
	public Path calculatePathWithFuture(Agent agent, State goalState, Map<Agent, Path> paths, boolean cp, List<State> badStates);
	public boolean checkIfPathExist(Agent agent);
}